---
id: labs-intro
slug: /labs
sidebar_position: 1
description: В данном разделе содержатся описания лабораторных работ.
---

# Лабораторные работы

## Общие требования к программам

Программа должна удовлетворять требованиям:

1. В коде программы должны отсутствовать:
   1. длинные и необоснованные цепочки из `if-else` в случаях, когда можно написать код короче;
   2. необоснованное количество `case` в `switch` в случаях, когда можно написать код короче;
   3. длинные и необоснованные логические выражения.
2. Код не должен быть подобен [спагетти-коду](https://habr.com/ru/post/187154/).
3. Код должен следовать одному из общепринятых Style Code (на выбор, [Стэнфордский университет](https://tproger.ru/translations/stanford-cpp-style-guide/), [Google](https://google.github.io/styleguide/cppguide.html) или другие общепринятые стили). Главное, чтобы код не был похож на спагетти (см. пункт выше).
4. Названия переменных в коде должны полностью отражать суть их использования.
5. Код не должен явным образом перебирать все возможные условия. Необходимо использовать логические выражения для минимизации кода.
6. В коде должны отсутствовать Windows-специфичные заголовочные файлы и функции (их использование запрещено).
7. Недопустимо необоснованное [дублирование кода](https://ru.wikipedia.org/wiki/Дублирование_кода).

:::danger

В случае нарушения любого требования, код будет отправляться на доработку.

:::
